<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>shark::LibSVMSelectionCriterion Struct Reference</title>
<script type="text/javaScript" src="search/search.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js"></script>
<script src="../../mlstyle.js"></script>
<link href="../css/besser.css" rel="stylesheet" type="text/css"/>
</head>
<!-- pretty cool: each body gets an id tag which is the basename of the web page  -->
<!--              and allows for page-specific CSS. this is client-side scripted, -->
<!--              so the id will not yet show up in the served source code -->
<script type="text/javascript">
    jQuery(document).ready(function () {
        var url = jQuery(location).attr('href');
        var pname = url.substr(url.lastIndexOf("/")+1, url.lastIndexOf(".")-url.lastIndexOf("/")-1);
        jQuery('#this_url').html('<strong>' + pname + '</strong>');
        jQuery('body').attr('id', pname);
    });
</script>
<body>
    <div id="shark_old">
        <div id="wrap">
            <div id="header">
                <div id="site-name"><a href="../../sphinx_pages/build/html/index.html">Shark machine learning library</a></div>
                <ul id="nav">
                    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/installation.html">Installation</a>
                    </li>
		    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/tutorials/tutorials.html">Tutorials</a>
                    </li>
		    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/benchmark.html">Benchmarks</a>
                    </li>
                    <li class="active">
                        <a href="classes.html">Documentation</a>
                        <ul>
                            <li class="first"></li>
                            <li><a href="../../sphinx_pages/build/html/rest_sources/quickref/quickref.html">Quick references</a></li>
                            <li><a href="classes.html">Class list</a></li>
                            <li class="last"><a href="group__shark__globals.html">Global functions</a></li>
                        </ul>
                    </li>
                </ul>
            </div>
        </div>
    </div>
<div id="doxywrapper">
<!--
    <div id="global_doxytitle">Doxygen<br>Documentation:</div>
-->
    <div id="navrow_wrapper">
<!-- Generated by Doxygen 1.9.8 -->
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceshark.html">shark</a></li><li class="navelem"><a class="el" href="structshark_1_1_lib_s_v_m_selection_criterion.html">LibSVMSelectionCriterion</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="structshark_1_1_lib_s_v_m_selection_criterion-members.html">List of all members</a> &#124;
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle"><div class="title">shark::LibSVMSelectionCriterion Struct Reference</div></div>
</div><!--header-->
<div class="contents">

<p>Computes the maximum gian solution.  
 <a href="structshark_1_1_lib_s_v_m_selection_criterion.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_svm_problems_8h_source.html">shark/Algorithms/QP/SvmProblems.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a84b251c8ca0ef80fe224866063d25fc4" id="r_a84b251c8ca0ef80fe224866063d25fc4"><td class="memTemplParams" colspan="2">template&lt;class Problem &gt; </td></tr>
<tr class="memitem:a84b251c8ca0ef80fe224866063d25fc4"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structshark_1_1_lib_s_v_m_selection_criterion.html#a84b251c8ca0ef80fe224866063d25fc4">operator()</a> (Problem &amp;problem, std::size_t &amp;i, std::size_t &amp;j)</td></tr>
<tr class="memdesc:a84b251c8ca0ef80fe224866063d25fc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Select a working set according to the second order algorithm of LIBSVM 2.8.  <br /></td></tr>
<tr class="separator:a84b251c8ca0ef80fe224866063d25fc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ea14cbcfedf57f2cd5a630f84a65b11" id="r_a3ea14cbcfedf57f2cd5a630f84a65b11"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshark_1_1_lib_s_v_m_selection_criterion.html#a3ea14cbcfedf57f2cd5a630f84a65b11">reset</a> ()</td></tr>
<tr class="separator:a3ea14cbcfedf57f2cd5a630f84a65b11"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Computes the maximum gian solution. </p>
<p>The first index is chosen based on the maximum gradient (first index of MVP) and the second index is chosen such that the step of the corresponding alphas produces the largest gain. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00094">94</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a84b251c8ca0ef80fe224866063d25fc4" name="a84b251c8ca0ef80fe224866063d25fc4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84b251c8ca0ef80fe224866063d25fc4">&#9670;&#160;</a></span>operator()()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double shark::LibSVMSelectionCriterion::operator() </td>
          <td>(</td>
          <td class="paramtype">Problem &amp;&#160;</td>
          <td class="paramname"><em>problem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t &amp;&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t &amp;&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Select a working set according to the second order algorithm of LIBSVM 2.8. </p>
<dl class="section return"><dt>Returns</dt><dd>maximal KKT vioation </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">problem</td><td>the svm problem to select the working set for </td></tr>
    <tr><td class="paramname">i</td><td>first working set component </td></tr>
    <tr><td class="paramname">j</td><td>second working set component </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00103">103</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<a id="a3ea14cbcfedf57f2cd5a630f84a65b11" name="a3ea14cbcfedf57f2cd5a630f84a65b11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ea14cbcfedf57f2cd5a630f84a65b11">&#9670;&#160;</a></span>reset()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void shark::LibSVMSelectionCriterion::reset </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00155">155</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/shark/Algorithms/QP/<a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a></li>
</ul>
</div><!-- contents -->
</div>
</body>
</html>
